PHP SNIPPET

<?php

$name = $_POST['name'];
$user = $_POST['user'];
$pass = $_POST['pass'];
$comm = $_POST['comm'];
$tags = $_POST['tags'];

$con = mysql_connect("ashconnell.com","root","");
mysql_select_db("passcloud", $con);

$sql="INSERT INTO passwords (name, user, pass, comm, tags) VALUES ('$name','$user','$pass','$comm','$tags')";

if (!mysql_query($sql,$con)) {
$return["added"] = "false"; // If it doesnt work return false.
}
else {
$id = mysql_insert_id();
$result = mysql_query("SELECT * FROM passwords WHERE id='$id'");
while($row = mysql_fetch_array($result)) {
$return["added"] = "true";
$return["id"] = $row['id'];
$return["name"] = $row['name'];
$return["user"] = $row['user'];
$return["pass"] = $row['pass'];
$return["comm"] = $row['comm'];
$return["tags"] = $row['tags'];
print json_encode($return);
}
}

?>

JAVASCRIPT SNIPPET

/////////////////////////////////////////////
// Add New Entry

$("#addBtn").click(function(){
$("#loadingWrapper").fadeIn();
var name = $("#addForm #name").val();
var user = $("#addForm #user").val();
var pass = $("#addForm #pass").val();
var comm = $("#addForm #comm").val();
var tags = $("#addForm #tags").val();
$.post("./Php/addEntry.php", {name: name, user: user, pass: pass, comm: comm, tags: tags}, function(data) {

if(data.added=="true"){
$("#loadingWrapper").hide();
$("#addNewFrame .addDeleteBtn").click();
resetAddForm();
$("#newEntry .entry").clone().insertAfter(".insertAfter").addClass("newEntry");
$(".newEntry").css("height","50px");
$(".newEntry .entryId").val(data.id);
$(".newEntry .nameCol input").val(name);
$(".newEntry .userCol input").val(user);
$(".newEntry .passCol input").val(pass);
$(".newEntry .commCol input").val(comm);
$(".newEntry .tagsCol input").val(tags);
$(".newEntry").removeClass("newEntry");
}
else {
alert("Error: This shouldn't happen at all. Please report this and try again after refreshing the page. Sorry!");
}
}, "json");
});

/////////////////////////////////////////////
// Entry Buttons

$(".editBtn").live("click", function(){
$(this).parents(".entry").addClass("editing");
$(this).parents(".entry").find(".deleteBtn").attr("title", "Stop Editing");
$(this).parents(".entry").find(".editBtn, .tagsBtn").fadeOut();
$(this).parents(".entry").find("input").css({'background-color' : '#fff','border' : '1px solid #e2e2e2'});
$(this).parents(".entry").find("input").attr("readonly","");
$(this).parents(".entry").animate({
height: "95px"
}, 500);
});

$(".deleteBtn").live("click", function(){
// If editing, just close edit mode
if($(this).parents(".entry").hasClass("editing")){
$(this).parents(".entry").find(".editBtn, .tagsBtn").fadeIn();
$(this).parents(".entry").find("input").css({'background-color' : '#f8f8f8','border' : '1px solid #f8f8f8'});
$(this).parents(".entry").find("input").attr("readonly","readyonly");
$(this).parents(".entry").animate({
height: "50px"
}, 500);
$(this).parents(".entry").removeClass("editing");
$(this).parents(".entry").find(".deleteBtn").attr("title", "Delete Entry");
}
// Else do deleting procedure
else {
deleting = $(this).parents(".entry").find(".entryId").val();
$("#loadingBox").hide();
$("#deleteBox").show();
$("#loadingWrapper").fadeIn();
}
});

/////////////////////////////////////////////
// Update Entry In List on Update click

$(".update").live("click", function(){
$("#loadingWrapper").fadeIn();
$(this).parents(".entry").addClass("updating");
var id = $(this).parents(".entry").find(".entryId").val();
var name = $(this).parents(".entry").find(".nameCol input").val();
var user = $(this).parents(".entry").find(".userCol input").val();
var pass = $(this).parents(".entry").find(".passCol input").val();
var comm = $(this).parents(".entry").find(".commCol input").val();
var tags = $(this).parents(".entry").find(".tagsCol input").val();
$.post("./Php/updateEntry.php", {id: id, name: name, user: user, pass: pass, comm: comm, tags: tags}, function(data) {

if(data.updated=="true"){
$("#loadingWrapper").hide();
$(".updating .deleteBtn").click();
$(".updating").removeClass("updating");
}
else {
alert("Error: This shouldn't happen at all. Please report this and try again after refreshing the page. Sorry!");
}
}, "json");
});

PassCloud

Specifications

  • Personal Project
  • Sleek Custom Interface
  • Fast Ajax responses
  • Bank Grade Encryption (128bit)