diff options
author | Malf Furious <m@lfurio.us> | 2018-09-16 17:02:29 -0400 |
---|---|---|
committer | Malf Furious <m@lfurio.us> | 2018-09-16 17:02:29 -0400 |
commit | 4151e3f7c42b6c679514d62768c282a907223e76 (patch) | |
tree | 20555793a7159a026c434f9a5a44091d5c84a94d /app/view/settings.php | |
parent | 55e503f24a30161bc4a8311e845eff4f4cbb2d40 (diff) | |
download | scrott-4151e3f7c42b6c679514d62768c282a907223e76.tar.gz scrott-4151e3f7c42b6c679514d62768c282a907223e76.zip |
Add settings modal and user settings tab
Updated old settings modal design, to incorporate added Scrott features.
Reimplemented this modal in Scrott from archived code and have included
it in the navbar.
Diffstat (limited to 'app/view/settings.php')
-rw-r--r-- | app/view/settings.php | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/app/view/settings.php b/app/view/settings.php new file mode 100644 index 0000000..0d7d011 --- /dev/null +++ b/app/view/settings.php @@ -0,0 +1,147 @@ +<?php + +/* + * SCROTT IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * For more information, please refer to UNLICENSE + */ + +namespace settings; + +require_once "view/formctrl.php"; +require_once "view/datalsts.php"; +require_once "class/obj.class.php"; +require_once "class/user.class.php"; + +?> +<?php function settings() : void { ?> + + <div id="settingsModal" class="modal fade" tabindex="-1" role="dialog"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal"> + <span aria-hidden="true">×</span> + </button> + + <h4 class="modal-title"> + <span class="glyphicon glyphicon-cog"></span> Settings + </h4> + </div> + + <div class="modal-body"> + <?php $s = false; ?> + <?php $u = \user::getCurrent(); ?> + + <ul class="nav nav-tabs" role="tablist"> + <li class="<?=oneStr("active", $s)?>"> + <a href="#settingsUserTab" data-toggle="tab"> + <span class="glyphicon glyphicon-user"></span> <?=$u->getDisplayName()?> + </a> + </li> + </ul> + + <?php $s = false; ?> + + <div class="tab-content"> + <div class="tab-pane fade <?=oneStr("in active", $s)?>" id="settingsUserTab"> + <?=userTab($u)?> + </div> + </div> + </div> + </div> + </div> + </div> + +<?php } ?> +<?php function image(\obj $obj, string $type, string $label) : void { ?> + + <div class="col-md-6 text-center"> + <?php if ($type == "head") { ?> + <?=\datalsts\objHeadCircle($obj, 100)?> + <?php $d = (!$obj->hasHeadImg() ? "disabled" : ""); ?> + <?php } else { ?> + <?=\datalsts\objBgPrev($obj, 100)?> + <?php $d = (!$obj->getBgImg() ? "disabled" : ""); ?> + <?php } ?> + + <br /> + <br /> + + <button type="button" class="btn btn-default btn-xs" data-toggle="collapse" data-target="#setimgCollapse-<?=$obj->guid?>-<?=$type?>"> + <span class="glyphicon glyphicon-camera"></span> Upload new image + </button> + + <br /> + + <button type="submit" name="input[rmImg-<?=$type?>]" class="btn btn-danger btn-xs" <?=$d?> onclick="return assertconfirm()"> + <span class="glyphicon glyphicon-remove"></span> Remove image + </button> + + <br /> + <br /> + + <div class="collapse" id="setimgCollapse-<?=$obj->guid?>-<?=$type?>"> + <?=\formctrl\file($label, "img-".$type)?> + </div> + </div> + +<?php } ?> +<?php function userTab(\user $u) : void { ?> + + <form method="post" action="<?=ap()?>" enctype="multipart/form-data"> + <?=\formctrl\formname( "settings-user" )?> + <?=\formctrl\hidden( "guid", $u->guid )?> + + <p> </p> + + <div class="row"> + <?=image($u, "head", "User Image")?> + <?=image($u, "bg", "Background Image")?> + </div> + + <p> </p> + + <?php if ($u->admin == 1) { ?> + <p class="pull-right"> + <span class="glyphicon glyphicon-sunglasses"></span> <?=$u->getDisplayName()?> is a Scrott Administrator + </p> + <?php } ?> + + <?=\formctrl\text( "Username", "", $u->name, "", false, true )?> + <?=\formctrl\checkbox( "Change Password", "setpasswd", false, false, "#setpasswdCollapse-".$u->guid )?> + + <div class="collapse" id="setpasswdCollapse-<?=$u->guid?>"> + <?=\formctrl\password( "Current Password", "curpasswd", false )?> + <?=\formctrl\password( "New Password", "passwd", false )?> + <?=\formctrl\password( "Confirm Password", "cpasswd", false )?> + </div> + + <?=\formctrl\text( "Alias", "alias", $u->alias, "", false )?> + <?=\formctrl\text( "Email", "email", $u->email, "", false, false, ($u->emailConf == 1 ? "has-success" : "") )?> + + <?php if ($u->email != "" && $u->emailConf == 0) { ?> + <?=\formctrl\text( "Email Verification Key", "emailVer", "", "", false, false, "has-warning", "You have not confirmed ownership of your email address" )?> + <?php } ?> + + <div class="btn-group pull-right"> + <button type="submit" class="btn btn-success"> + <span class="glyphicon glyphicon-ok"></span> Save Changes + </button> + + <a href="<?=ar()?>/deleteaccount" class="btn btn-danger"> + <span class="glyphicon glyphicon-trash"></span> Delete Account + </a> + </div> + + <h6>Created <?=$u->created?></h6> + <h6>Updated <?=$u->updated?></h6> + </form> + +<?php } ?> |