1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-09-20 09:18:48 +02:00
phorge-phorge/webroot/rsrc/css/aphront/form-view.css

434 lines
7.7 KiB
CSS
Raw Normal View History

2011-01-25 20:31:40 +01:00
/**
* @provides aphront-form-view-css
*/
/**
* These styles are overrides for .aphront-form-view
*/
.aphront-form-view-shaded {
border: 1px solid #d4dae0;
background: #f4f5f8;
}
.aphront-form-view-padded {
2011-01-25 20:31:40 +01:00
padding: 1em;
}
2011-01-26 02:40:21 +01:00
.aphront-form-view label.aphront-form-label {
padding-top: 5px;
2011-01-25 22:26:09 +01:00
width: 19%;
2011-01-25 20:31:40 +01:00
float: left;
text-align: right;
font-weight: bold;
font-size: 13px;
color: #757c88;
text-shadow: 0 1px rgba(255,255,255,1);
2011-01-25 20:31:40 +01:00
}
.device-phone .aphront-form-view label.aphront-form-label,
.aphront-form-full-width.aphront-form-view label.aphront-form-label {
display: block;
float: none;
text-align: left;
width: 100%;
margin-bottom: 3px;
}
2011-01-25 20:31:40 +01:00
.aphront-form-input {
2011-01-25 22:26:09 +01:00
margin-left: 20%;
margin-right: 20%;
width: 60%;
2011-01-25 20:31:40 +01:00
}
.device-phone .aphront-form-input,
.aphront-form-full-width .aphront-form-input {
margin-left: 0%;
margin-right: 0%;
width: 100%;
}
2011-01-25 20:31:40 +01:00
.aphront-form-error {
width: 18%;
2011-01-25 20:31:40 +01:00
float: right;
color: #aa0000;
font-weight: bold;
padding-top: 4px;
}
.aphront-dialog-body .aphront-form-full-width {
margin-top: -10px;
}
.device-phone .aphront-form-error,
.aphront-form-full-width .aphront-form-error {
float: none;
width: 100%;
}
.device-phone .aphront-form-drag-and-drop-upload {
display: none;
}
.aphront-form-required {
font-weight: normal;
color: #888888;
font-size: 11px;
}
.aphront-form-input input {
2011-01-25 20:31:40 +01:00
width: 100%;
}
.aphront-form-input textarea {
display: block;
width: 100%;
box-sizing: border-box;
2011-01-25 20:31:40 +01:00
height: 12em;
}
.aphront-form-control {
padding: 4px;
}
.aphront-form-full-width .aphront-form-control {
padding: 4px 0;
}
2011-01-25 20:31:40 +01:00
.aphront-form-control-submit button,
.aphront-form-control-submit a.button {
float: right;
margin: 0.5em 0 0 2%;
2011-01-26 00:19:06 +01:00
}
Add a basic multipage form Summary: Ref T2232. Very busy day on IRC so I feel like I've made 20 minutes of progress in 1-minute spurts here, but this adds the basics for a form that can have multiple pages and automatically handle pagination and reading to/from the request, objects and responses. The UIExample is reasonably instructive. Basically, you make a form, add pages to the form, and add controls to the pages. The core flow control looks like this: if ($request->isFormPost()) { $form->readFromRequest($request); // (1) if ($form->isComplete()) { // (2) $response = $form->writeToResponse($response); // (3) // Process result here. // (4) } } else { $form->readFromObject($object); // (5) } The key parts are: # This reads the form state from the request, including reading all the inactive pages. # This tests if all pages are valid and the user just clicked "Done" on the last page. # This produces a "response", which might be writing to an object (for simpler forms) or creating a transaction record (for more complex forms). # Here, we would save the object or apply the transactions. # When the user views the form for the first time, we preload all the values from some object (which might just be empty). Ultimate goal here is to fix repository creation to not be a terrible pit of awfulness. There are probably a lot of rough edges and missing features still, but this seems to not be totally crazy. I'm using two submit buttons with different names which doesn't work on IE7 or something, but we can JS our way out of that if we need to. Test Plan: Paged forward and backward through the form. Reviewers: btrahan, chad Reviewed By: btrahan CC: aran Maniphest Tasks: T2232 Differential Revision: https://secure.phabricator.com/D6003
2013-05-23 23:39:01 +02:00
.phui-form-control-multi-submit input {
float: right;
margin: 0.5em 0 0em 2%;
width: auto;
}
2011-01-26 02:17:19 +01:00
.aphront-form-control-textarea textarea.aphront-textarea-very-short {
height: 44px;
2011-01-26 02:17:19 +01:00
}
.aphront-form-control-textarea textarea.aphront-textarea-very-tall {
height: 24em;
}
2011-01-26 00:19:06 +01:00
.aphront-form-control-select .aphront-form-input {
padding-top: 2px;
2011-01-25 20:31:40 +01:00
}
.aphront-form-view .aphront-form-caption {
font-size: 12px;
color: #888;
padding: 2px;
2011-01-25 20:31:40 +01:00
text-align: right;
margin-right: 20%;
2011-01-26 02:40:21 +01:00
margin-left: 20%;
2011-01-25 20:31:40 +01:00
}
.device-phone .aphront-form-view .aphront-form-caption,
.aphront-form-full-width .aphront-form-view .aphront-form-caption {
margin-right: 0%;
}
/* override for when inside an aphront-panel-view */
.aphront-panel-view .aphront-form-view h1 {
padding: 0em 0em .8em 0em;
}
2011-01-25 20:31:40 +01:00
.aphront-form-instructions {
width: 60%;
margin-left: 20%;
padding: 10px 4px;
}
.device .aphront-form-instructions,
.aphront-form-full-width .aphront-form-instructions {
width: 100%;
margin: 0;
2011-01-25 20:31:40 +01:00
}
.aphront-form-important {
margin: .5em 0;
background: #ffffdd;
padding: .5em 1em;
}
.aphront-form-important code {
display: block;
padding: .25em;
margin: .5em 2em;
}
.aphront-form-control-static .aphront-form-input,
.aphront-form-control-markup .aphront-form-input {
padding-top: 6px;
2011-01-25 20:31:40 +01:00
font-size: 13px;
}
2011-01-26 02:40:21 +01:00
.aphront-form-control-togglebuttons .aphront-form-input {
padding: 2px 0 0 0;
}
table.aphront-form-control-radio-layout,
2011-01-26 02:40:21 +01:00
table.aphront-form-control-checkbox-layout {
margin-top: 3px;
font-size: 13px;
}
table.aphront-form-control-radio-layout th,
2011-01-26 02:40:21 +01:00
table.aphront-form-control-checkbox-layout th {
padding-top: 2px;
padding-left: 0.35em;
padding-bottom: 4px;
2011-01-26 02:40:21 +01:00
}
.aphront-form-control-radio-layout td input,
2011-01-26 02:40:21 +01:00
.aphront-form-control-checkbox-layout td input {
margin-top: 4px;
2011-01-26 02:40:21 +01:00
width: auto;
}
2011-02-06 08:56:06 +01:00
.aphront-form-radio-caption {
font-size: 11px;
color: #444444;
max-width: 400px;
}
.aphront-form-control-image span {
margin: 0px 4px 0px 2px;
}
.aphront-form-control-image .default-image {
display: inline;
width: 12px;
}
2011-02-06 08:56:06 +01:00
.aphront-form-input hr {
border: none;
background: #bbbbbb;
height: 1px;
position: relative;
2011-03-24 19:07:36 +01:00
}
.aphront-form-inset {
margin: 0 0 10px;
padding: 10px;
background: #fff;
border: 1px solid #d4dae0;
}
.aphront-form-inset h1 {
color: #777;
font-weight: normal;
padding-bottom: 10px;
2011-03-24 19:07:36 +01:00
}
.aphront-form-drag-and-drop-file-list {
width: 400px;
}
.drag-and-drop-instructions {
color: #333333;
font-size: 11px;
padding: 6px 8px;
}
.drag-and-drop-file-target {
border: 1px dashed #bfbfbf;
padding-top: 10px;
padding-bottom: 10px;
}
.aphront-textarea-drag-and-drop {
background: #99ff99;
border-color: #669966;
}
.aphront-form-crop .crop-box {
cursor: move;
overflow: hidden;
}
.aphront-form-crop .crop-box .crop-image {
position: relative;
top: 0px;
left: 0px;
}
.calendar-button {
display: inline;
background: url(/rsrc/image/icon/fatcow/calendar_edit.png)
no-repeat center center;
padding: 8px 12px;
margin: 2px 8px 2px 2px;
position: relative;
border: 1px solid transparent;
}
.aphront-form-date-container {
position: relative;
display: inline;
}
.aphront-form-date-container select {
margin: 2px;
display: inline;
}
.aphront-form-date-container input.aphront-form-date-time-input {
width: 7em;
display: inline;
}
.fancy-datepicker {
position: absolute;
width: 240px;
}
.fancy-datepicker-core {
padding: 1px;
font-size: 11px;
font-family: Verdana;
text-align: center;
}
.fancy-datepicker-core .month-table,
.fancy-datepicker-core .day-table {
margin: 0 auto;
border-collapse: separate;
border-spacing: 1px;
width: 100%;
}
.fancy-datepicker-core .month-table {
margin-bottom: 6px;
}
.fancy-datepicker-core .month-table td.lrbutton {
width: 20%;
}
.fancy-datepicker-core .month-table td {
padding: 4px;
font-weight: bold;
color: #444444;
}
.fancy-datepicker-core .month-table td.lrbutton {
background: #e6e6e6;
border: 1px solid;
border-color: #a6a6a6 #969696 #868686 #a6a6a6;
}
.fancy-datepicker-core .day-table td {
overflow: hidden;
background: #f6f6f6;
vertical-align: center;
text-align: center;
border: 1px solid #d6d6d6;
padding: 4px 0;
}
.fancy-datepicker-core .day-table td.day-placeholder {
border-color: transparent;
background: transparent;
}
.fancy-datepicker-core .day-table td.weekend {
color: #666666;
border-color: #e6e6e6;
}
.fancy-datepicker-core .day-table td.day-name {
background: transparent;
border: 1px transparent;
vertical-align: bottom;
color: #888888;
}
.fancy-datepicker-core .day-table td.today {
background: #eeee99;
border-color: #aaaa66;
}
.fancy-datepicker-core .day-table td.datepicker-selected {
background: #0099ff;
border-color: #0066cc;
}
.fancy-datepicker-core td {
cursor: pointer;
}
.fancy-datepicker-core td.novalue {
cursor: inherit;
}
.picker-open .calendar-button,
.fancy-datepicker-core {
background-color: white;
border: 1px solid #777777;
box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.25);
}
.picker-open .calendar-button {
border-left: 1px solid white;
}
.login-to-comment {
padding: 12px;
float: right;
}
.aphront-form-control-counted-togglebuttons {
padding-top: 7px;
}
.aphront-form-control-counted-togglebuttons .toggle {
position: relative;
}
.aphront-form-control-counted-togglebuttons .toggle-fixed {
cursor: pointer;
}
.aphront-form-control-counted-togglebuttons .toggle .counter {
font-size: smaller;
display: none;
position: absolute;
top: -9px;
right: -8px;
padding: 0px 3px;
border-radius: 3px;
}
.aphront-form-control-counted-togglebuttons:hover .toggle .counter {
display: block;
}
.aphront-form-control-counted-togglebuttons .toggle .counter {
background: gray;
color: #ddd;
}
.aphront-form-control-counted-togglebuttons .toggle-selected .counter {
color: white;
}
.aphront-form-control-counted-togglebuttons .toggle.disabled:hover {
background-color: #a7a7a7;
}
.phui-form-divider hr {
height: 1px;
border: 0;
background: #c0c0c0;
width: 85%;
margin: 15px auto;
}