-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.php
144 lines (115 loc) · 5.03 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<?php
/*
Plugin Name: Avatar Plugin
Plugin URI: http://www.osclass.org
Description: Avatar plugins helps to upload profile picture while register.
Version: 1.0.0
Author: Media.Dmj
Author URI: http://www.vithudu.com/
Short name: Avatar Plugin
Plugin update URI: avatar-plugin
*/
include "ModelAvatar.php";
/* Install Plugin */
function avatar_install() {
ModelAvatar::newInstance()->import('avatar_plugin/struct.sql');
if (!file_exists(osc_content_path()."/plugins/avatar_plugin/avatar/")) {
mkdir(osc_content_path()."/plugins/avatar_plugin/avatar/", 0777, true);
fopen(osc_content_path()."/plugins/avatar_plugin/avatar/index.php", 'a');
}
}
/* Uninstall Plugin */
function avatar_uninstall() {
ModelAvatar::newInstance()->uninstall();
}
function insertAvatar($userId){
$upload_directory = osc_content_path().'/plugins/avatar_plugin/avatar/';
$safe_filename = preg_replace(
array("/\s+/", "/[^-\.\w]+/"),
array("_", ""),
trim($_FILES['avatar']['name']));
$ext = pathinfo($safe_filename, PATHINFO_EXTENSION);
move_uploaded_file (
$_FILES['avatar']['tmp_name'],
$upload_directory.$userId.'_avatar.'.$ext);
$last_added = ModelAvatar::newInstance()->getAvatar($userId);
if($last_added !="" ) {
ModelAvatar::newInstance()->updateAvatar($userId.'_avatar.'.$ext, $userId);
} else {
ModelAvatar::newInstance()->insertAvatar($userId.'_avatar.'.$ext, $userId);
}
}
function show_avatar($user) {
$avatar = ModelAvatar::newInstance()->getAvatar($user);
if($avatar){?>
<img class="avatar" style="border: 1px solid rgb(221, 221, 221); background: rgb(255, 255, 255) none repeat scroll 0% 0%; padding: 5px; border-radius: 4px; margin-bottom: 5px;" width="130" class="img-thumbnail" src="<?php echo osc_base_url()."oc-content/plugins/avatar_plugin/avatar/". $avatar; ?>" />
<?php } else { ?>
<img class="avatar no-avatar" style="border: 1px solid rgb(221, 221, 221); background: rgb(255, 255, 255) none repeat scroll 0% 0%; padding: 5px; border-radius: 4px; margin-bottom: 5px;" width="130" class="img-thumbnail" src="<?php echo osc_base_url()."oc-content/plugins/avatar_plugin/no-avatar.png";?>" />
<?php }
}
function avatar_form(){ ?>
<div class="control-group">
<label class="control-label" for="password"><?php _e('Avatar', 'avatar_plugin'); ?></label>
<div class="controls">
<?php show_avatar(osc_user_id()); ?><br />
</div>
<div class="controls">
<div id="text">
<input id="pAvatar" name="avatar" type="file" />
<span id="lblError" style="color: red;"></span>
</div>
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
$(".user-profile form").attr("enctype", "multipart/form-data");
$("form[name='register']").attr("enctype", "multipart/form-data");
});
</script>
<?php if( osc_get_osclass_section() =="profile"){?>
<script type="text/javascript" src="<?php echo osc_base_url().'oc-includes/osclass/assets/js/jquery.validate.min.js';?>"></script>
<?php } ?>
<script type="text/javascript" src="<?php echo osc_base_url().'oc-content/plugins/avatar_plugin/js/additional-methods.min.js';?>"></script>
<script type="text/javascript">
$.validator.addMethod('filesize', function (value, element, param) {
return this.optional(element) || (element.files[0].size <= param)
});
$("form[name='register'], form[name='profile']").validate({
rules: {
'avatar': {
<?php if (!OC_ADMIN) { ?>
//required: true,
<?php } ?>
extension: "png|jpe?g",
filesize: 3145728
}
},
messages:{
'avatar':{
<?php if (!OC_ADMIN) { ?>
//required : "<?php //echo osc_esc_js(__('Please upload at least a document','avatar_plugin')); ?>",
<?php } ?>
extension:"<?php echo osc_esc_js(__('Only png, jpg formats are allowed!','avatar_plugin')); ?>",
filesize: "<?php echo osc_esc_js(__('Size should less than 3MB','avatar_plugin')); ?>"
}
}
});
</script>
<style type="text/css">
label.error {
color:#ff0000;
display: block;
}
</style>
<?php }
function avatar_user_menu() {
echo '<li style="background:#e7e7e7;"><a href="' . osc_admin_render_plugin_url(osc_plugin_folder(__FILE__) . 'admin/help.php') . '" >' . __('Avatar Help', 'avatar_plugin') . '</a></li>';
}
osc_add_hook('admin_menu', 'avatar_user_menu');
osc_add_hook('user_register_form', 'avatar_form');
osc_add_hook('user_profile_form', 'avatar_form');
osc_add_hook('user_register_completed', 'insertAvatar');
osc_add_hook('user_edit_completed', 'insertAvatar');
osc_add_hook(osc_plugin_path(__FILE__) . '_uninstall', 'avatar_uninstall') ;
osc_register_plugin(osc_plugin_path(__FILE__), 'avatar_install') ;
?>